/*
 * Created on 30.01.2004
 *
 * To change the template for this generated file go to
 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
 */
package ro.qi.framework.sys.security.entities;

import ro.qi.framework.sys.entities.Entity;

/**
 * @author Denverash
 *
 * To change the template for this generated type comment go to
 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
 */
public class SecurityAccountRoleCollection extends Entity {

	public SecurityAccountRoleCollection() {
		super();
	}

	public SecurityAccountRoleCollection(int accountId) {
		super();
		setAccountId(accountId);
		select();
	}

	public void setAccountId(int value) {
		setValue("accountId", value);
	}

	public int getCollectionSize() {
		return getCollectionSize("accountRoles");
	}

	public int getRoleId(int index) {
		return getCollectionIntValue("accountRoles", "roleId", index);
	}

	public SecurityApplicationRole getApplication(int index) {
		return new SecurityApplicationRole(getRoleId(index));
	}

//	public int getApplicationId(int index) {
//		return getCollectionIntValue("roles", "applicationId", index);
//	}

//	public static SecurityApplicationRoleCollection selectByUser(int userId) {
//		return selectByUser(userId, false);
//	}
//
//	public static SecurityApplicationRoleCollection selectByUser(int userId, boolean retreiveAll) {
//		SecurityApplicationRoleCollection roles = new SecurityApplicationRoleCollection();
//		roles.setUserId(userId);
//		roles.setRetreiveAll(retreiveAll);
//		roles.select();
//		return roles;
//	}
//
//	public static SecurityApplicationRoleCollection selectByGroup(int groupId) {
//		SecurityApplicationRoleCollection roles = new SecurityApplicationRoleCollection();
//		roles.setGroupId(groupId);
//		roles.select();
//		return roles;
//	}
//
//	public static SecurityApplicationRoleCollection selectByApplication(int applicationId) {
//		return selectByApplication(applicationId, 0, false);
//	}
//
//	public static SecurityApplicationRoleCollection selectByApplication(int applicationId, int roleId, boolean retreiveAll) {
//		SecurityApplicationRoleCollection roles = new SecurityApplicationRoleCollection();
//		roles.setRetreiveAll(retreiveAll);
//		roles.setApplicationId(applicationId);
//		roles.setRoleId(roleId);
//		roles.select();
//		return roles;
//	}
//
//	public void setRetreiveAll(boolean value) {
//		setValue("retreiveAll", value);
//	}
//
//	public void setUserId(int value) {
//		setValue("userId", value);
//	}
//
//	public int getUserId() {
//		return getIntValue("userId");
//	}
//
//	public void setGroupId(int value) {
//		setValue("groupId", value);
//	}
//
//	public int getGroupId() {
//		return getIntValue("groupId");
//	}
//
//	public void setApplicationId(int value) {
//		setValue("applicationId", value);
//	}
//
//	public int getApplicationId() {
//		return getIntValue("applicationId");
//	}
//
//	public void setRoleId(int value) {
//		setValue("roleId", value);
//	}
//
//	public int getRoleId() {
//		return getIntValue("roleId");
//	}
//
//	public int getNoRoles() {
//		return ((Vector)getValue("roles")).size();
//	}
//	
//	public int getRoleId(int index) {
//		if( index < getNoRoles() ) {
//			Hashtable tmp = (Hashtable)(((Vector)getValue("roles")).get(index));
//			if( tmp.containsKey("roleId") )
//				return Integer.parseInt(tmp.get("roleId").toString());
//		}
//		return 0;
//	}
//
//	public int getApplicationId(int index) {
//		if( index < getNoRoles() ) {
//			Hashtable tmp = (Hashtable)(((Vector)getValue("roles")).get(index));
//			if( tmp.containsKey("applicationId") )
//				return Integer.parseInt(tmp.get("applicationId").toString());
//		}
//		return 0;
//	}
//
//	public int getUserId(int index) {
//		if( index < getNoRoles() ) {
//			Hashtable tmp = (Hashtable)(((Vector)getValue("roles")).get(index));
//			if( tmp.containsKey("userId") )
//				return Integer.parseInt(tmp.get("userId").toString());
//		}
//		return 0;
//	}
//	
//	public int getGroupId(int index) {
//		if( index < getNoRoles() ) {
//			Hashtable tmp = (Hashtable)(((Vector)getValue("roles")).get(index));
//			if( tmp.containsKey("groupId") )
//				return Integer.parseInt(tmp.get("groupId").toString());
//		}
//		return 0;
//	}

}
